package com.lvmama.rhino.service;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.lvmama.rhino.entity.MonitorVO;
import com.lvmama.rhino.pojo.OptionData;
import com.lvmama.rhino.pojo.monitor.MonitorApiFailure;

public interface MonitorFailureApiService {

    /**
     * 所有接口失败率占比
     * @param monitorVO
     * @return
     */
    List<OptionData> queryOptionDataList(MonitorVO monitorVO);

    /**
     * 分页查询失败接口信息
     * @param monitorVO
     * @return
     */
    PageInfo<MonitorApiFailure> queryMonitorFailureApiPage(MonitorVO monitorVO);

    /**
     * 接口失败率版本分布
     * @param monitorVO
     * @return
     */
    List<MonitorApiFailure> queryMonitorFailureApiVersionList(MonitorVO monitorVO);

    /**
     * 接口失败率运营商分布
     * @param monitorVO
     * @return
     */
    List<MonitorApiFailure> queryMonitorFailureApiOperatorsList(MonitorVO monitorVO);

    /**
     * 接口失败率网络分布
     * @param monitorVO
     * @return
     */
    List<MonitorApiFailure> queryMonitorFailureApiNetworkTypeList(MonitorVO monitorVO);

    /**
     * 接口失败率省份分布
     * @param monitorVO
     * @return
     */
    List<MonitorApiFailure> queryMonitorFailureApiProvinceList(MonitorVO monitorVO);

    /**
     * 单个接口失败率
     * @param monitorVO
     * @return
     */
    List<MonitorApiFailure> querySingleMonitorFailureApiList(MonitorVO monitorVO);

}
